/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Sesiones;

import Facades.util.JsfUtil;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

/**
 *
 * @author damstev
 */
@ManagedBean
@SessionScoped
public class sesiones {

    private int codigo;
    private int codigoDepartamento;
    private String login;
    private String passwd;
    private String rol = "";
    private boolean validado = false;
    @EJB
    private Facades.PersonaFacade facade_Persona;
    private List user;

    /** Creates a new instance of sesiones */
    public sesiones() {
    }

    public String validar() {

        user = facade_Persona.findByLoginPasswd(login, passwd);

        if (user.isEmpty())
        {
            JsfUtil.addErrorMessage("EL usuario o la contraseña son incorrectas");
            cerrarSession();
        }
        else
        {
            Object[] usuario = (Object[]) user.get(0);
            validado = true;
//            System.out.println("salida lista login " + usuario[0] + " pasword" + usuario[1] + "perfil" + usuario[2]);
            
            codigo=(Integer)usuario[3];
            
            if (usuario[0].equals(login) && usuario[1].equals(passwd))
            {
                if ((Integer)usuario[2] == 1)
                {
                    return "/administrador/adminSys.xhtml";
                }
                if ((Integer)usuario[2] == 4)
                {
                    return "/evaluador/List";
                }
                if ((Integer)usuario[2] == 2)
                {
                    return "/directorDepartamento/adminDirector.xhtml";
                }
                 if ((Integer)usuario[2] == 5)
                {
                    return "/directorID/adminDirectorID.xhtml";
                }
                        
                else
                {
                    return "/Persona/empleado/proyecto/Empleado";
                }
            }            
        }
        return "";
    }

    public String cerrarSession() {
        codigo = 0;
        login = "";
        passwd = "";
        rol = "";
        user = null;
        validado = false;

        return "/index";

    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

    public String getRol() {
        return rol;
    }

    public void setRol(String rol) {
        this.rol = rol;
    }

    public String getLogin() {
        return login;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public boolean isValidado() {
        return validado;
    }

    public void setValidado(boolean validado) {
        this.validado = validado;
    }

    public int getCodigo() {
        return codigo;
    }

    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }
}
